﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace TerminologiaSinacorImporter
{
    public partial class frmImporter : Form
    {
        public frmImporter()
        {
            InitializeComponent();
        }

        private void txtArquivo_TextChanged(object sender, EventArgs e)
        {
            if (txtArquivo.Text.Replace(" ", "").Length > 0  && System.IO.File.Exists(@txtArquivo.Text)) 
            { 
                btImportar.Enabled = true;
            } 
            else 
            { 
                btImportar.Enabled = false;
            }
        }

        private void btArquivo_Click(object sender, EventArgs e)
        {
            dlgAbrirArquivo.Filter = "Banco de Dados Access (*.mdb)|*.mdb";
            dlgAbrirArquivo.InitialDirectory = @"C:\";
            dlgAbrirArquivo.Title = "Escolha a Base de Dados Access";
            txtArquivo.Text = (dlgAbrirArquivo.ShowDialog() == DialogResult.OK) ? dlgAbrirArquivo.FileName : string.Empty;
        }

        private void btImportar_Click(object sender, EventArgs e)
        {
            btImportar.Enabled = false;

            try
            {
                TerminologiaSinacorSrv.ImportaDados objServico = new TerminologiaSinacorSrv.ImportaDados();
                objServico.ArquivoMDB = @txtArquivo.Text;
                bool retorno = objServico.InsereDadosNovos(TerminologiaSinacorSrv.ImportaDados.Tabela.Todas);
                if (!retorno)
                {
                    MessageBox.Show("Ocorreu um erro ao tentar importar o arquivo!");
                    btImportar.Enabled = true;
                }
                else
                {
                    MessageBox.Show("Importação do arquivo realizada com sucesso!");
                    txtArquivo.Text = "";
                    btImportar.Enabled = false;
                    txtArquivo.Focus();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro ao tentar importar o arquivo!\n" + ex.Message.ToString());
            }
        }
    }
}
